1: | purge(nil) | → nil | |
2: | purge(x . y) | → x . purge(remove(x,y)) | |
3: | remove(x,nil) | → nil | |
4: | remove(x,y . z) | → if(x = y,remove(x,z),y . remove(x,z)) | |
5: | PURGE(x . y) | → PURGE(remove(x,y)) | |
6: | PURGE(x . y) | → REMOVE(x,y) | |
7: | REMOVE(x,y . z) | → REMOVE(x,z) | |